/*
 * Copyright (c) Huawei Technologies Co., Ltd. 2021-2021. All rights reserved.
 */

package com.huawei.chengdu.meetingdemo.view.dialogs;

import android.content.Context;
import android.view.View;
import android.widget.TextView;

import com.huawei.chengdu.meetingdemo.R;

public class CustomFloatWindow extends FloatWindowCustomBase {
    private static final String TAG = CustomFloatWindow.class.getSimpleName();

    private TextView titleTv;

    private TextView contentTv;

    private TextView okTv;

    private TextView cancelTv;

    /**
     * 含确定取消两个按钮，包含标题，不包含内容的悬浮窗（带叹号）
     *
     * @param context 上下文
     * @param id id
     * @param title 标题
     * @param okText 确定
     * @param cancelText 取消
     */
    public CustomFloatWindow(Context context, String id, String title, String okText, String cancelText) {
        this(context, id, title, null, okText, cancelText);
    }

    /**
     * 含确定取消两个按钮，包含标题，内容的悬浮窗（带叹号）
     *
     * @param context 上下文
     * @param id id
     * @param title 标题
     * @param content 内容
     * @param okText 确定
     * @param cancelText 取消
     */
    public CustomFloatWindow(Context context, String id, String title, String content, String okText, String cancelText) {
        super(context, id);
        init(title, content, okText, cancelText);
    }

    @Override
    protected int getLayoutId() {
        return R.layout.custom_dialog_2btn;
    }

    @Override
    protected String getChildName() {
        return TAG;
    }

    /**
     * 设置按钮高亮
     *
     * @param type 类型
     */
    public void setBthHighLight(int type) {
        if (type == HIGH_LIGHT_OK) {
            okTv.setTextColor(mContext.getColor(R.color.dark_red));
        } else if (type == HIGH_LIGHT_CAN) {
            cancelTv.setTextColor(mContext.getColor(R.color.dark_red));
        } else {
            okTv.setTextColor(mContext.getColor(R.color.dark_blue));
            cancelTv.setTextColor(mContext.getColor(R.color.dark_blue));
        }
    }

    // 初始化带title的悬浮窗
    private void init(String title, String content, String okText, String cancelText) {
        super.setWmTitleParams("CommonDialog - TwoButtons"); // 设置窗口的title字段，请误改动
        titleTv = mRootView.findViewById(R.id.call_dialog_title);
        titleTv.setText(title);
        contentTv = mRootView.findViewById(R.id.call_dialog_number);
        if (content == null || content.isEmpty()) {
            contentTv.setVisibility(View.GONE);
        } else {
            contentTv.setText(content);
        }
        initCommon(okText, cancelText);
    }

    private void initCommon(String okText, String cancelText) {
        okTv = mRootView.findViewById(R.id.acceptAction);
        okTv.setText(okText);
        okTv.setOnClickListener(this);
        cancelTv = mRootView.findViewById(R.id.rejectAction);
        cancelTv.setText(cancelText);
        cancelTv.setOnClickListener(this);
    }
}
